"""
加入购物车或立即购买操作
"""
from time import sleep

from selenium.webdriver.common.by import By

from base.base_page import BasePage


class AddProduct(BasePage):
    """
    购物操作
    """
    def __init__(self):
        super().__init__(driver_type='web')
        # 立即购买元素定位
        self.buy_now_btn = By.ID, 'buy_now'
        # 加入购物车元素定位
        self.cart_btn = By.ID, 'join_cart'
        # 添加商品到购物车提示信息
        self.add_msg = By.CLASS_NAME, 'conect-title'

    def buy_now_page(self):
        """
        点击立即购买方法
        """
        self.click_element(self.find_element_method(self.buy_now_btn))

    def add_to_cart(self):
        """
        点击加入购物车方法
        """
        self.click_element(self.find_element_method(self.cart_btn))

    def get_add_msg(self):
        """
        获取商品添加信息
        :return: 商品添加信息
        """
        sleep(2)
        # 切换 frame
        self.driver.switch_to.frame('layui-layer-iframe1')
        # 通过索引切换 frame
        sleep(2)
        return self.find_element_method(self.add_msg).text